home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / radius_detect.nasl < prev    next >
Text File  |  2005-01-14  |  2KB  |  72 lines

  1. #
  2. # (C) Tenable Network Security
  3. #
  4.  
  5.  
  6.  
  7. if(description)
  8. {
  9.   script_id(11738);
  10.   script_bugtraq_id(2989, 2991, 2994, 3529, 3530, 3532, 4230, 5103, 6261, 7892);
  11.   script_version ("$Revision: 1.4 $");
  12.   script_cve_id("CAN-2000-0321", "CAN-2001-0534",
  13.               "CAN-2001-1081", "CAN-2001-1376", "CAN-2001-1377");
  14.         
  15.   script_name(english:"RADIUS server detection");
  16.  
  17.   desc["english"] = "
  18. The remote host is running a RADIUS server.
  19.  
  20. Several flaws are affecting various different various servers, however 
  21. Nessus could not determine if they affect the remote host.
  22.  
  23. The flaws range between obtaining a root shell remotely to be
  24. able to set up a dictionnary attack against the remote server.
  25.  
  26.  
  27. *** As Nessus solely relied on the presence of this service to
  28. *** issue this alert, this might be a false positive.
  29.  
  30. Solution : Make sure you are running the latest version of your radius server and
  31. filter incoming traffic to this port.
  32.  
  33. Risk factor : High";
  34.  
  35.  
  36.  
  37.   script_description(english:desc["english"]);
  38.  
  39.   summary["english"] = "Detect a radius server";
  40.   script_summary(english:summary["english"]);
  41.  
  42.   script_category(ACT_GATHER_INFO);
  43.  
  44.   script_copyright(english:"This script is Copyright (C) 2003 Tenable Network Security");
  45.   family["english"] = "Firewalls";
  46.   script_family(english:family["english"]);
  47.  
  48.   exit(0);
  49. }
  50.  
  51.  
  52. ips = split(get_host_ip(), sep:".", keep:0);
  53.  
  54. port = 1812;
  55. soc = open_sock_udp(port);
  56. req = raw_string(0x01, 0x6C, 0, 0x3a) + 
  57.       raw_string(0xE0, 0xB8, 
  58.          0xA0, 0x50, 0x6B, 0xf6, 0xad, 0x64, 0xf3, 0xcb,
  59.          0xa6, 0x19, 0x10, 0x25, 0xca, 0x57) +
  60.       raw_string(0x01, 0x08, 0x6e, 0x65, 0x73, 0x73, 0x75, 0x73) +
  61.       raw_string(0x02, 0x12, 0x1a, 0xc3, 0x0e, 0xbb, 0x05, 0x1a, 0x2f, 0x3d,
  62.          0x65, 0xA2, 0xe8, 0x31, 0x5e, 0x8e, 0xb8, 0x07) +
  63.       raw_string(0x04, 0x06, int(ips[0]), int(ips[1]), int(ips[2]), int(ips[3])) +
  64.       raw_string(0x05, 0x06, 0x00, 0x00, 0x04, 0x01);
  65.  
  66.  
  67.  
  68. send(socket:soc, data:req);
  69. r = recv(socket:soc, length:4096);
  70. close(soc);
  71. if(r && (ord(r[0]) == 3))security_hole(port);
  72.